/*
 * Copyright (c) Hunan Goke,Chengdu Goke,Shandong Goke. 2021. All rights reserved.
 */
#ifndef __IMX307_CMOS_EX_H_
#define __IMX307_CMOS_EX_H_

#ifdef __cplusplus
#if __cplusplus
extern "C" {
#endif
#endif

static const ISP_CMOS_LCAC_S g_stIspLCac = {
	
    /*bEnable*/
    1,
	/*u16PurpleDetRange*/
	30,
	/*VarThr*/
	0,
    /*au16RLumaThd*/
    {1500, 1500, 0},
    /*au16GLumaThd*/
    {1500, 1500, 0},
    /*au16BLumaThd*/
    {4095, 1500, 0},
    /*au16YLumaThd*/
    {3200, 1500, 0},
    /*as16CbCrRatio*/
    { -50, -50, -50},    
	/*enOpMode*/
    0,
	/*stManual*/
    {
        //u8DePurpleCrStr
        0,
        //u8DePurpleCbStr 
        3
    },
	/*stAuto*/
    {
        //u8DePurpleCrStr
    	{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
        //u8DePurpleCbStr    	
    	{3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3}
    }
};


static const ISP_CMOS_LCAC_S g_stIspLCacWdr = {
	
	/*bEnable*/
	1,
	/*u16PurpleDetRange*/
	30,
	/*VarThr*/
	130,
    /*au16RLumaThd*/
    {1500, 1500, 0},
    /*au16GLumaThd*/
    {1500, 1500, 0},
    /*au16BLumaThd*/
    {4095, 1500, 0},
    /*au16YLumaThd*/
    {3200, 1500, 0},
    /*as16CbCrRatio*/
    { -50, -50, -50},    
	/*enOpMode*/
	0,
	/*stManual*/
	{
		//u8DePurpleCrStr
		0,
		//u8DePurpleCbStr 
		3
	},
	/*stAuto*/
	{
		//u8DePurpleCrStr
		{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
		//u8DePurpleCbStr		
		{3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3}
	}
};


static const ISP_CMOS_DPC_S g_stCmosDpc = {
    /* ISO */
    /* 100, 200, 400, 800, 1600, 3200, 6400, 12800, 25600, 51200, 102400, 204800, 409600, 819200, 1638400, 3276800 */
    {   0,   0,   0, 152,  160,  180,  180,   180,   190,   180,    152,    152,    152,    152,     152,     152}, /* au16Strength[16] */
    {   0,   0,   0,   0,    0,   50,   50,    50,    50,    50,     50,     50,     50,     50,      50,      50}, /* au16BlendRatio[16] */
    0,       /* 0 for after drc, 1 for before wdr */
};

static const ISP_CMOS_GE_S g_stIspGe = {
    /* For GE */
    0,    /* bEnable */
    13,    /* u8Slope */
    13,    /* u8SensiSlope */
    4800, /* u16SensiThr */
    /* ISO */
    /*   1,    2,      4,     8,    16,    32,    64,   128,   256,   512,  1024,  2048,  4096,  8192, 16384, 32768 */
    { 4800,  4800,  4800,  4800,  4960,  4960,  4960,  4960,  5120,  5120,  5120,  5120,  5280,  5280,  5280,  5280}, /* au16Threshold[ISP_AUTO_ISO_STRENGTH_NUM] */
    {  128,   128,   128,   128,   129,   129,   129,   129,   130,   130,   130,   130,   131,   131,   131,   131}, /* au16Strength[ISP_AUTO_ISO_STRENGTH_NUM] */
    {16384, 16384, 16384, 16384, 16384, 32768, 32768, 32768, 32768, 32768, 32768, 32768, 32768, 32768, 32768, 32768} /* au16NpOffset[ISP_AUTO_ISO_STRENGTH_NUM] */
};

static const ISP_CMOS_GE_S g_stIspWdrGe = {
    /* For GE */
    0,    /* bEnable */
    13,    /* u8Slope */
    13,    /* u8SensiSlope */
    4800, /* u16SensiThr */

    /* ISO */
    /*  1,    2,    4,    8,   16,   32,   64,   128,  256,  512, 1024, 2048, 4096, 8192,16384, 32768 */
    { 4800,  4800,  4800,  4800,  4960,  4960,  4960,  4960,  5120,  5120,  5120,  5120,  5280,  5280,  5280,  5280}, /* au16Threshold[ISP_AUTO_ISO_STRENGTH_NUM] */
    {  128,   128,   128,   128,   129,   129,   129,   129,   130,   130,   130,   130,   131,   131,   131,   131}, /* au16Strength[ISP_AUTO_ISO_STRENGTH_NUM] */
    {16384, 16384, 16384, 16384, 16384, 32768, 32768, 32768, 32768, 32768, 32768, 32768, 32768, 32768, 32768, 32768} /* au16NpOffset[ISP_AUTO_ISO_STRENGTH_NUM] */
};

static const ISP_CMOS_DEMOSAIC_S g_stIspDemosaic = {
    1,    // bEnable
    /* 1,    2,    4,    8,   16,   32,   64,  128,  256,  512, 1024, 2048, 4096, 8192,16384,32768 */
    /* au8NonDirStr */
    { 64,   64,   64,   48,   48,   48,   48,   48,   48,   48,   48,   48,   48,   48,   48,   48},
    /* au8NonDirMFDetailEhc */
    { 48,   48,   40,   40,   30,   30,   30,   30,   22,   16,   16,   16,   16,   16,   16,   16},
    /* au8NonDirHFDetailEhc */
    {  0,    0,    1,    2,    3,    4,    5,    5,    5,    5,    5,    7,    7,    7,    7,    7},
    /* au8DetailSmoothRange */
    {  2,    2,    2,    2,    2,    2,    3,    4,    5,    5,    7,    7,    7,    7,    7,    7},
};

static const ISP_CMOS_DEMOSAIC_S g_stIspDemosaicWdr = {
    1,    // bEnable
    /* 1,    2,    4,    8,   16,   32,   64,  128,  256,  512, 1024, 2048, 4096, 8192,16384,32768 */
    /* au8NonDirStr */
    { 64,   64,   64,   64,   64,   64,   64,   64,   64,   64,   64,   64,   64,   64,   64,   64},
    /* au8NonDirMFDetailEhc */
    { 55,   55,   50,   45,   40,   35,   30,   25,   22,   16,   16,   16,   16,   16,   16,   16},
    /* au8NonDirHFDetailEhc */
    {  0,    1,    2,    2,    2,    3,    3,    3,    3,    4,    4,    5,    5,    5,    5,    5},
    /* au8DetailSmoothRange */
    {  3,    3,    3,    4,    4,    4,    4,    4,    5,    5,    7,    7,    7,    7,    7,    7},
};

static const ISP_CMOS_ANTIFALSECOLOR_S g_stIspAntiFalseColor = {
    1,    /* bEnable */
    /* 1,    2,    4,    8,   16,   32,   64,   128,   256,  512, 1024, 2048, 4096, 8192, 16384, 32768 */
    { 10,   10,    8,    8,    7,    7,    7,     6,     6,    6,    5,    4,    3,    2,     1,     0}, /* au8AntiFalseColorThreshold */
    {  8,    8,    8,    8,    7,    7,    7,     6,     6,    6,    5,    4,    3,    2,     1,     0}, /* au8AntiFalseColorStrength */
};

static const ISP_CMOS_ANTIFALSECOLOR_S g_stIspWdrAntiFalseColor = {
    1,    /* bEnable */
    /* 1,    2,    4,    8,   16,   32,   64,   128,  256,  512, 1024, 2048, 4096, 8192, 16384, 32768 */
    {  4,    4,    4,    4,    4,    4,    4,     4,    4,    4,    4,    4,    3,    2,     1,     0}, /* au8AntiFalseColorThreshold */
    {  4,    4,    4,    4,    4,    4,    4,     4,    4,    4,    4,    4,    3,    2,     1,     0}, /* au8AntiFalseColorStrength */
};

/***BAYER NR**/
static ISP_CMOS_NOISE_CALIBRATION_S g_stIspNoiseCalibration = {
    10,     // Calibration Lut Num
    /*************Calibration LUT Table*************/
    {
        {100.000000f,   0.025472f,  0.008370f},
        {200.000000f,   0.051026f,  0.020051f},
        {400.000000f,   0.100380f,  0.002657f},
        {800.000000f,   0.199705f,  0.024892f},
        {1600.000000f,  0.397814f,  0.118102f},
        {3200.000000f,  0.792300f,  0.443096f},
        {6400.000000f,  1.554968f,  2.329596f},
        {12800.000000f, 3.029946f,  11.217048f},
        {25600.000000f, 5.870243f,  45.309135f},
        {51200.000000f, 10.794330f, 187.701797f}
    }
    /*********************************************/
};

static const ISP_CMOS_BAYERNR_S g_stIspBayerNr = {
    1,      // bEnable
    0,      // bBnrMonoSensorEn
    0,      // bNrLscEnable
    96,     // u8BnrLscMaxGain
    256,    // u16BnrLscCmpStrength
    {65, 65, 65, 65, 65, 65, 60, 55, 48, 46, 30, 16, 16, 16, 16, 16}, // FineStr
    {
        {0, 0, 0, 1, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3}, // ChromaStrR
        {0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2}, // ChromaStrGr
        {0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2}, // ChromaStrGb
        {0, 0, 0, 1, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3}  // ChromaStrB
    },
    {0, 0, 0, 0},                // WDRFrameStr
    {0, 0, 0, 0},                // FusionFrameStr
    {
        {120, 140, 180, 200, 240, 280, 300, 320, 340, 380, 340, 340, 300, 300, 280, 280},    // CoarseStrR
        {108, 110, 115, 125, 135, 160, 180, 180, 180, 180, 160, 160, 148, 148, 138, 138},    // CoarseStrGR
        {108, 110, 115, 125, 135, 160, 180, 180, 180, 180, 160, 160, 148, 148, 138, 138},    // CoarseStrGB
        {120, 140, 180, 200, 240, 280, 300, 300, 340, 380, 340, 340, 300, 300, 280, 280}     // CoarseStrB
    },
    {30, 30, 30, 20, 20, 20, 22, 25, 25, 30, 30, 30, 30, 30, 30, 30}, // lutCoringWeight
    {
        10, 20, 40, 80, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100
    },   // CoringRatio
};

static const ISP_CMOS_BAYERNR_S g_stIspBayerNrWdr2To1 = {
    1,      // bEnable
    0,      // bBnrMonoSensorEn
    0,      // bNrLscEnable
    96,     // u8BnrLscMaxGain
    256,    // u16BnrLscCmpStrength
    {100, 90, 80, 70, 60, 50, 40, 30, 20, 16, 16, 16, 16, 16, 16, 16},     // FineStr
    {
        {0, 0, 0, 1, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3}, // ChromaStrR
        {0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2}, // ChromaStrGr
        {0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2}, // ChromaStrGb
        {0, 0, 0, 1, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3}  // ChromaStrB
    },
    {16, 6, 12, 0},              // WDRFrameStr
    {16, 6, 0, 0},               // FusionCoarseStr
    {
        {120, 125, 130, 135, 140, 145, 150, 155, 160, 160, 160, 160, 160, 160, 160, 160},    // CoarseStrR
        {100, 105, 110, 115, 120, 125, 130, 135, 140, 140, 140, 140, 140, 140, 140, 140},    // CoarseStrGR
        {100, 105, 110, 115, 120, 125, 130, 135, 140, 140, 140, 140, 140, 140, 140, 140},    // CoarseStrGB
        {120, 125, 130, 135, 140, 145, 150, 155, 160, 160, 160, 160, 160, 160, 160, 160},     // CoarseStrB
    },
    {25, 25, 25, 25, 25, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30},     // lutCoringWeight
    {
        10, 20, 40, 80, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, \
        100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100
    },  // coring ratio
};


static const ISP_CMOS_LDCI_S g_stIspLdci = {
    /* bEnable */
    1,
    /* u8GaussLPFSigma */
    20,

    /* 1,   2,   4,   8,  16,  32,  64,  128, 256, 512,1024,2048,4096,8192,16384,32768 */
    /* au8HePosWgt */
    {120, 100,  90,  80,  70,  60,  30,  20,   10,   0,   0,   0,   0,   0,    0,    0},
    /* au8HePosSigma */
    { 90,  80,  80,  80,  60,  48,  20,  10,   10,   8,   6,   2,   1,   1,    1,    1},
    /* au8HePosMean */
    {  0,   0,   0,   0,   0,   0,   0,   0,    0,   0,   0,   0,   0,   0,    0,    0},
    /* au8HeNegWgt */
    { 32,  32,  45,  45,  45,  24,  12,   8,    6,   0,   0,   0,   0,   0,    0,    0},
    /* au8HeNegSigma */
    { 46,  46,  80,  80,  80,  72,  64,  54,   36,   8,   6,   2,   1,   1,    1,    1},
    /* au8HeNegMean */
    {128, 128, 128,   0,   0,   0,   0,   0,    0,   0,   0,   0,   0,   0,    0,    0},
    /* au16BlcCtrl */
    {  5,   5,   5,   5,   5,   5,   5,   5,    5,   5,   5,   5,   5,   5,    5,    5}
};

static const ISP_CMOS_LDCI_S g_stIspWdrLdci = {
    /* bEnable */
    1,
    /* u8GaussLPFSigma */
    36,
    /* 1,   2,   4,   8,  16,  32,  64,  128,  256, 512,1024,2048,4096,8192,16384,32768 */
    /* au8HePosWgt */
    { 16,  16,  12,   8,   4,   0,   0,    0,    0,   0,   0,   0,   0,   0,    0,    0},
    /* au8HePosSigma */
    { 80,  80,  80,  80,  80,  80,  80,   80,   80,  80,  80,  80,  80,  80,   80,   80},
    /* au8HePosMean */
    { 32,  32,  32,  32,  32,  32,  32,   32,   32,  32,  32,  32,  32,  32,   32,   32},
    /* au8HeNegWgt */
    { 32,  32,  32,  45,  45,  24,  12,    8,    6,   0,   0,   0,   0,   0,    0,    0},
    /* au8HeNegSigma */
    { 80,  80,  80,  80,  80,  80,  80,   80,   80,  80,  80,  80,  80,  80,   80,   80},
    /* au8HeNegMean */
    {180, 180, 180,   0,   0,   0,   0,    0,    0,   0,   0,   0,   0,   0,    0,    0},
    /* au16BlcCtrl */
    { 20,  20,  20,  20,  30,  30,  30,   30,   30,  30,  30,  30,  30,  30,   30,   30}
};

static const ISP_CMOS_GAMMA_S g_stIspGamma = {
    /* au16Gamma[GAMMA_EXT_NODE_NUMBER] */
    {
        0, 19, 38, 58, 77, 97, 117, 137, 156, 176, 195, 215, 234, 253, 272, 290, 308, 326, 344, 364, 383, 401, 419, 436, 453, 470, 487, 504, 521, 539, 557, 576,
        596, 617, 627, 637, 648, 658, 669, 679, 690, 701, 712, 723, 734, 745, 757, 768, 779, 791, 803, 815, 827, 839, 851, 863, 876, 888, 901, 914, 927, 940,
        953, 967, 981, 987, 994, 1001, 1008, 1015, 1022, 1029, 1036, 1043, 1051, 1058, 1066, 1073, 1081, 1088, 1096, 1104, 1111, 1119, 1127, 1135, 1143,
        1150, 1158, 1166, 1174, 1182, 1190, 1198, 1206, 1214, 1222, 1230, 1238, 1246, 1254, 1262, 1270, 1278, 1286, 1294, 1302, 1310, 1318, 1326, 1334,
        1341, 1349, 1357, 1365, 1372, 1380, 1387, 1395, 1402, 1409, 1417, 1424, 1431, 1438, 1445, 1452, 1459, 1466, 1472, 1479, 1485, 1492, 1499, 1505,
        1511, 1518, 1524, 1531, 1537, 1543, 1549, 1556, 1562, 1568, 1574, 1580, 1586, 1592, 1598, 1604, 1610, 1616, 1622, 1628, 1634, 1639, 1645, 1651,
        1657, 1663, 1668, 1674, 1680, 1685, 1691, 1697, 1702, 1708, 1713, 1719, 1724, 1730, 1736, 1741, 1747, 1752, 1758, 1763, 1769, 1774, 1780, 1785,
        1790, 1796, 1801, 1807, 1812, 1818, 1823, 1829, 1834, 1840, 1845, 1850, 1856, 1861, 1867, 1872, 1877, 1883, 1888, 1893, 1899, 1904, 1909, 1915,
        1920, 1925, 1930, 1936, 1941, 1946, 1951, 1957, 1962, 1967, 1972, 1977, 1982, 1988, 1993, 1998, 2003, 2008, 2013, 2018, 2023, 2028, 2033, 2038,
        2043, 2048, 2053, 2058, 2063, 2068, 2073, 2078, 2082, 2087, 2092, 2097, 2102, 2107, 2111, 2116, 2121, 2126, 2131, 2135, 2140, 2145, 2149, 2154,
        2159, 2164, 2168, 2173, 2177, 2182, 2187, 2191, 2196, 2200, 2205, 2210, 2214, 2219, 2223, 2228, 2232, 2237, 2241, 2246, 2250, 2254, 2259, 2263,
        2268, 2272, 2276, 2281, 2285, 2289, 2294, 2298, 2302, 2307, 2311, 2315, 2319, 2324, 2328, 2332, 2336, 2340, 2344, 2349, 2353, 2357, 2361, 2365,
        2369, 2373, 2377, 2381, 2385, 2389, 2393, 2397, 2401, 2405, 2409, 2413, 2416, 2420, 2424, 2428, 2432, 2436, 2439, 2443, 2447, 2450, 2454, 2458,
        2461, 2465, 2468, 2472, 2475, 2479, 2482, 2486, 2489, 2493, 2496, 2500, 2503, 2506, 2510, 2513, 2516, 2520, 2523, 2526, 2529, 2533, 2536, 2539,
        2542, 2546, 2549, 2552, 2555, 2558, 2561, 2565, 2568, 2571, 2574, 2577, 2580, 2583, 2586, 2590, 2593, 2596, 2599, 2602, 2605, 2608, 2611, 2614,
        2617, 2621, 2624, 2627, 2630, 2633, 2636, 2639, 2642, 2646, 2649, 2652, 2656, 2659, 2662, 2665, 2668, 2671, 2674, 2677, 2680, 2683, 2686, 2690,
        2693, 2696, 2699, 2702, 2705, 2708, 2711, 2714, 2717, 2720, 2723, 2726, 2729, 2732, 2735, 2738, 2741, 2744, 2747, 2750, 2753, 2756, 2759, 2762,
        2764, 2767, 2770, 2773, 2776, 2779, 2782, 2785, 2788, 2791, 2794, 2796, 2799, 2802, 2805, 2808, 2811, 2814, 2817, 2820, 2822, 2825, 2828, 2831,
        2834, 2837, 2840, 2843, 2845, 2848, 2851, 2853, 2856, 2859, 2862, 2865, 2868, 2871, 2874, 2877, 2879, 2882, 2885, 2887, 2890, 2893, 2896, 2899,
        2901, 2904, 2907, 2909, 2912, 2915, 2918, 2920, 2923, 2926, 2929, 2932, 2934, 2937, 2940, 2942, 2945, 2948, 2951, 2954, 2956, 2959, 2962, 2964,
        2966, 2969, 2972, 2974, 2977, 2980, 2983, 2986, 2988, 2991, 2994, 2996, 2998, 3001, 3004, 3006, 3009, 3012, 3015, 3018, 3020, 3023, 3026, 3028,
        3031, 3033, 3035, 3038, 3040, 3043, 3046, 3048, 3051, 3054, 3057, 3059, 3062, 3064, 3066, 3069, 3071, 3074, 3077, 3080, 3082, 3085, 3088, 3090,
        3093, 3095, 3097, 3100, 3102, 3105, 3108, 3110, 3113, 3115, 3117, 3120, 3122, 3125, 3128, 3130, 3133, 3135, 3138, 3140, 3143, 3145, 3147, 3150,
        3152, 3155, 3158, 3160, 3163, 3165, 3167, 3170, 3172, 3175, 3178, 3180, 3183, 3185, 3187, 3189, 3192, 3194, 3196, 3199, 3201, 3204, 3207, 3209,
        3211, 3214, 3217, 3219, 3222, 3224, 3226, 3228, 3231, 3233, 3235, 3238, 3241, 3243, 3245, 3247, 3250, 3252, 3254, 3257, 3260, 3262, 3264, 3267,
        3269, 3271, 3273, 3276, 3279, 3281, 3283, 3286, 3288, 3290, 3292, 3295, 3298, 3300, 3302, 3305, 3307, 3309, 3311, 3313, 3316, 3318, 3320, 3322,
        3325, 3327, 3329, 3332, 3335, 3337, 3339, 3342, 3344, 3346, 3348, 3350, 3353, 3355, 3357, 3360, 3362, 3364, 3366, 3368, 3371, 3373, 3375, 3378,
        3380, 3382, 3384, 3386, 3389, 3391, 3393, 3396, 3398, 3400, 3402, 3405, 3407, 3409, 3411, 3413, 3416, 3418, 3420, 3423, 3425, 3427, 3429, 3431,
        3434, 3436, 3438, 3441, 3443, 3445, 3447, 3449, 3452, 3454, 3456, 3459, 3461, 3463, 3465, 3467, 3469, 3471, 3473, 3475, 3478, 3480, 3482, 3484,
        3487, 3489, 3491, 3494, 3496, 3498, 3500, 3502, 3504, 3506, 3508, 3511, 3513, 3515, 3517, 3519, 3521, 3523, 3525, 3528, 3530, 3532, 3534, 3536,
        3538, 3540, 3542, 3545, 3547, 3549, 3551, 3553, 3555, 3557, 3559, 3561, 3564, 3566, 3568, 3570, 3572, 3574, 3576, 3578, 3581, 3583, 3585, 3587,
        3589, 3591, 3593, 3595, 3598, 3600, 3602, 3604, 3606, 3608, 3610, 3612, 3614, 3616, 3618, 3620, 3622, 3624, 3626, 3628, 3631, 3633, 3635, 3637,
        3639, 3641, 3643, 3645, 3647, 3649, 3651, 3653, 3655, 3657, 3659, 3661, 3663, 3665, 3667, 3670, 3672, 3674, 3676, 3678, 3680, 3682, 3684, 3686,
        3688, 3690, 3692, 3694, 3696, 3698, 3700, 3702, 3704, 3706, 3708, 3710, 3712, 3714, 3716, 3718, 3720, 3722, 3724, 3726, 3728, 3730, 3732, 3734,
        3736, 3738, 3740, 3742, 3744, 3746, 3748, 3750, 3752, 3754, 3756, 3758, 3760, 3762, 3764, 3766, 3767, 3769, 3771, 3773, 3775, 3777, 3779, 3781,
        3783, 3785, 3787, 3789, 3791, 3793, 3795, 3797, 3799, 3801, 3803, 3804, 3806, 3808, 3810, 3812, 3814, 3816, 3818, 3820, 3822, 3824, 3826, 3828,
        3830, 3832, 3834, 3836, 3837, 3839, 3841, 3843, 3845, 3847, 3849, 3851, 3853, 3855, 3857, 3858, 3860, 3862, 3864, 3866, 3868, 3870, 3872, 3873,
        3875, 3877, 3879, 3881, 3883, 3885, 3887, 3888, 3890, 3892, 3894, 3896, 3898, 3900, 3902, 3904, 3905, 3907, 3909, 3911, 3913, 3915, 3917, 3919,
        3920, 3922, 3924, 3926, 3928, 3930, 3932, 3934, 3935, 3937, 3939, 3941, 3943, 3945, 3947, 3949, 3950, 3952, 3954, 3955, 3957, 3959, 3961, 3963,
        3965, 3967, 3969, 3971, 3972, 3974, 3976, 3977, 3979, 3981, 3983, 3985, 3987, 3989, 3991, 3993, 3994, 3996, 3998, 4000, 4001, 4003, 4005, 4006,
        4008, 4010, 4012, 4014, 4016, 4018, 4020, 4022, 4023, 4025, 4027, 4028, 4030, 4032, 4034, 4036, 4037, 4039, 4041, 4042, 4044, 4046, 4048, 4050,
        4052, 4054, 4056, 4058, 4059, 4061, 4063, 4064, 4066, 4068, 4070, 4072, 4073, 4075, 4077, 4078, 4080, 4082, 4084, 4086, 4087, 4089, 4091, 4092,
        4094, 4095
    }
};

static const ISP_CMOS_GAMMA_S g_stIspGammaFSWDR = {
    {
        0, 6, 13, 20, 27, 34, 40, 47, 54, 61, 68, 75, 82, 88, 95, 102, 109, 116, 123, 130, 137, 144, 151, 157, 164, 171, 178, 185, 192, 199, 206, 213, 220, 226, 233,
        240, 247, 254, 261, 268, 274, 281, 288, 295, 301, 308, 315, 322, 328, 335, 342, 349, 355, 362, 368, 375, 382, 388, 395, 401, 408, 414, 421, 427, 434, 440,
        446, 453, 459, 465, 471, 478, 484, 490, 496, 503, 509, 515, 521, 527, 533, 539, 545, 551, 557, 563, 569, 575, 581, 587, 593, 599, 605, 611, 617, 623, 629,
        635, 641, 647, 653, 659, 664, 670, 676, 682, 688, 694, 700, 706, 712, 718, 723, 729, 735, 741, 747, 753, 759, 765, 771, 777, 783, 789, 795, 801, 806, 812,
        819, 825, 831, 837, 843, 849, 855, 861, 867, 873, 879, 885, 891, 897, 903, 909, 915, 921, 927, 933, 939, 946, 952, 958, 964, 970, 976, 982, 988, 994, 1000,
        1006, 1012, 1018, 1024, 1030, 1036, 1042, 1049, 1055, 1061, 1067, 1073, 1079, 1085, 1091, 1097, 1103, 1109, 1115, 1121, 1127, 1133, 1139, 1144, 1150,
        1156, 1162, 1168, 1174, 1180, 1186, 1192, 1198, 1204, 1209, 1215, 1221, 1227, 1233, 1239, 1244, 1250, 1256, 1262, 1268, 1273, 1279, 1285, 1291, 1297,
        1302, 1308, 1314, 1320, 1325, 1331, 1337, 1343, 1348, 1354, 1360, 1366, 1371, 1377, 1383, 1389, 1394, 1400, 1406, 1411, 1417, 1423, 1428, 1434, 1440,
        1445, 1451, 1457, 1462, 1468, 1473, 1479, 1485, 1490, 1496, 1502, 1507, 1513, 1518, 1524, 1530, 1535, 1541, 1546, 1552, 1557, 1563, 1569, 1574, 1580,
        1585, 1591, 1596, 1602, 1607, 1613, 1618, 1624, 1629, 1635, 1640, 1646, 1651, 1657, 1662, 1668, 1673, 1678, 1684, 1689, 1695, 1700, 1706, 1711, 1717,
        1722, 1727, 1733, 1738, 1744, 1749, 1754, 1760, 1765, 1770, 1776, 1781, 1787, 1792, 1797, 1803, 1808, 1813, 1819, 1824, 1829, 1835, 1840, 1845, 1850,
        1856, 1861, 1866, 1872, 1877, 1882, 1887, 1893, 1898, 1903, 1908, 1914, 1919, 1924, 1929, 1934, 1940, 1945, 1950, 1955, 1960, 1966, 1971, 1976, 1981,
        1987, 1992, 1997, 2002, 2007, 2012, 2018, 2023, 2028, 2033, 2038, 2043, 2049, 2054, 2059, 2064, 2069, 2074, 2079, 2084, 2089, 2095, 2100, 2105, 2110,
        2115, 2120, 2125, 2130, 2135, 2140, 2145, 2150, 2155, 2160, 2165, 2170, 2175, 2179, 2184, 2189, 2194, 2199, 2204, 2209, 2214, 2218, 2223, 2228, 2233,
        2238, 2242, 2247, 2252, 2256, 2261, 2266, 2271, 2275, 2280, 2285, 2289, 2294, 2299, 2303, 2308, 2313, 2317, 2322, 2326, 2331, 2335, 2340, 2345, 2349,
        2354, 2358, 2363, 2367, 2372, 2376, 2381, 2385, 2390, 2394, 2399, 2403, 2407, 2412, 2416, 2421, 2425, 2429, 2434, 2438, 2442, 2447, 2451, 2455, 2460,
        2464, 2468, 2472, 2477, 2481, 2485, 2489, 2493, 2498, 2502, 2506, 2510, 2514, 2518, 2523, 2527, 2531, 2535, 2539, 2543, 2547, 2551, 2555, 2558, 2562,
        2566, 2570, 2574, 2578, 2582, 2585, 2589, 2593, 2597, 2601, 2604, 2608, 2612, 2616, 2619, 2623, 2627, 2631, 2634, 2638, 2642, 2646, 2649, 2653, 2657,
        2660, 2664, 2668, 2671, 2675, 2679, 2683, 2686, 2690, 2694, 2697, 2701, 2705, 2708, 2712, 2716, 2719, 2723, 2727, 2730, 2734, 2738, 2741, 2745, 2749,
        2752, 2756, 2760, 2764, 2768, 2771, 2775, 2779, 2782, 2786, 2789, 2793, 2796, 2800, 2804, 2807, 2811, 2814, 2818, 2821, 2825, 2828, 2832, 2835, 2839,
        2842, 2846, 2849, 2853, 2856, 2860, 2863, 2867, 2870, 2873, 2877, 2880, 2884, 2887, 2891, 2894, 2897, 2901, 2904, 2908, 2911, 2914, 2918, 2921, 2924,
        2928, 2931, 2934, 2938, 2941, 2944, 2948, 2951, 2954, 2958, 2961, 2964, 2967, 2971, 2974, 2977, 2981, 2984, 2987, 2990, 2994, 2997, 3000, 3003, 3006,
        3010, 3013, 3016, 3019, 3023, 3026, 3029, 3032, 3035, 3038, 3042, 3045, 3048, 3051, 3054, 3057, 3061, 3064, 3067, 3070, 3073, 3076, 3079, 3082, 3086,
        3089, 3092, 3095, 3098, 3101, 3104, 3107, 3110, 3113, 3116, 3119, 3122, 3125, 3129, 3132, 3135, 3138, 3141, 3144, 3147, 3150, 3153, 3156, 3159, 3162,
        3165, 3168, 3171, 3174, 3177, 3180, 3183, 3185, 3188, 3191, 3194, 3197, 3200, 3203, 3206, 3209, 3212, 3215, 3218, 3221, 3224, 3227, 3229, 3232, 3235,
        3238, 3241, 3244, 3247, 3250, 3252, 3255, 3258, 3261, 3264, 3267, 3270, 3272, 3275, 3278, 3281, 3284, 3287, 3289, 3292, 3295, 3298, 3301, 3303, 3306,
        3309, 3312, 3315, 3317, 3320, 3323, 3326, 3328, 3331, 3334, 3337, 3339, 3342, 3345, 3348, 3350, 3353, 3356, 3359, 3361, 3364, 3367, 3370, 3372, 3375,
        3378, 3380, 3383, 3386, 3388, 3391, 3394, 3396, 3399, 3402, 3405, 3407, 3410, 3413, 3415, 3418, 3420, 3423, 3426, 3428, 3431, 3434, 3436, 3439, 3442,
        3444, 3447, 3449, 3452, 3455, 3457, 3460, 3462, 3465, 3468, 3470, 3473, 3475, 3478, 3481, 3483, 3486, 3488, 3491, 3493, 3496, 3498, 3501, 3504, 3506,
        3509, 3511, 3514, 3516, 3519, 3521, 3524, 3526, 3529, 3531, 3534, 3536, 3539, 3541, 3544, 3546, 3549, 3551, 3554, 3556, 3559, 3561, 3564, 3566, 3569,
        3571, 3574, 3576, 3579, 3581, 3584, 3586, 3588, 3591, 3593, 3596, 3598, 3601, 3603, 3606, 3608, 3610, 3613, 3615, 3618, 3620, 3622, 3625, 3627, 3630,
        3632, 3634, 3637, 3639, 3642, 3644, 3646, 3649, 3651, 3654, 3656, 3658, 3661, 3663, 3665, 3668, 3670, 3673, 3675, 3677, 3680, 3682, 3684, 3687, 3689,
        3691, 3694, 3696, 3698, 3701, 3703, 3705, 3708, 3710, 3712, 3714, 3717, 3719, 3721, 3724, 3726, 3728, 3731, 3733, 3735, 3737, 3740, 3742, 3744, 3747,
        3749, 3751, 3753, 3756, 3758, 3760, 3762, 3765, 3767, 3769, 3771, 3774, 3776, 3778, 3780, 3783, 3785, 3787, 3789, 3792, 3794, 3796, 3798, 3801, 3803,
        3805, 3807, 3809, 3812, 3814, 3816, 3818, 3820, 3823, 3825, 3827, 3829, 3831, 3834, 3836, 3838, 3840, 3842, 3844, 3847, 3849, 3851, 3853, 3855, 3857,
        3860, 3862, 3864, 3866, 3868, 3870, 3873, 3875, 3877, 3879, 3881, 3883, 3885, 3888, 3890, 3892, 3894, 3896, 3898, 3900, 3902, 3905, 3907, 3909, 3911,
        3913, 3915, 3917, 3919, 3921, 3924, 3926, 3928, 3930, 3932, 3934, 3936, 3938, 3940, 3942, 3944, 3946, 3949, 3951, 3953, 3955, 3957, 3959, 3961, 3963,
        3965, 3967, 3969, 3971, 3973, 3975, 3977, 3979, 3981, 3984, 3986, 3988, 3990, 3992, 3994, 3996, 3998, 4000, 4002, 4004, 4006, 4008, 4010, 4012, 4014,
        4016, 4018, 4020, 4022, 4024, 4026, 4028, 4030, 4032, 4034, 4036, 4038, 4040, 4042, 4044, 4046, 4048, 4050, 4052, 4054, 4056, 4058, 4060, 4062, 4064,
        4066, 4068, 4070, 4072, 4074, 4075, 4077, 4079, 4081, 4083, 4085, 4087, 4089, 4091, 4093, 4095
    }
};

static const ISP_CMOS_PREGAMMA_S g_stPreGamma = {
    0,
    {
        3821,    7131,    9741,   11691,   13307,   14713,   15971,   17118,   18179,   20099,   21818,   23385,   24833,   26185,   27456,   28659,
        29804,   30897,   31945,   32952,   33923,   35770,   37506,   39150,   40713,   42207,   43638,   45014,   46340,   47622,   48863,   50066,
        51235,   52373,   53481,   54561,   55616,   57656,   59611,   61491,   63303,   65054,   66749,   68393,   69990,   71543,   73057,   74533,
        75974,   77383,   78761,   80110,   81432,   83999,   86475,   88866,   91182,   93428,   95609,   97731,   99799,  101815,  103784,  105708,
        107590,  109433,  111239,  113010,  114747,  118128,  121395,  124558,  127626,  130606,  133505,  136330,  139084,  141773,  144402,  146973,
        149491,  151957,  154376,  156749,  159079,  161368,  163618,  165831,  168008,  170152,  172263,  174342,  176392,  178413,  180407,  182374,
        184315,  186232,  188125,  189995,  191842,  193668,  197259,  200771,  204210,  207580,  210884,  214126,  217308,  220435,  223509,  226532,
        229506,  232434,  235318,  238159,  240959,  243720,  246443,  249130,  251782,  254400,  256986,  259540,  262064,  264559,  267025,  269464,
        271876,  274262,  276623,  278960,  281273,  283562,  288076,  292504,  296852,  301124,  305323,  309452,  313515,  317515,  321454,  325335,
        329160,  332931,  336651,  340322,  343945,  347521,  351054,  354543,  357991,  361399,  364767,  368099,  371394,  374653,  377878,  381070,
        384230,  387358,  390456,  393523,  396562,  399573,  405512,  411348,  417083,  422724,  428274,  433738,  439119,  444420,  449646,  454798,
        459880,  464894,  469842,  474728,  479554,  484320,  489030,  493685,  498287,  502838,  507339,  511791,  516197,  520557,  524874,  529147,
        533378,  537569,  541720,  545833,  549908,  553946,  557949,  561917,  565852,  569753,  577458,  585040,  592504,  599854,  607096,  614234,
        621272,  628214,  635064,  641824,  648498,  655090,  661601,  668035,  674394,  680681,  686897,  693045,  699128,  705146,  711103,  716999,
        722836,  728616,  734341,  740012,  745630,  751197,  756713,  762181,  767602,  778305,  788831,  799189,  809384,  819425,  829318,  839069,
        848683,  858166,  867523,  876757,  885875,  894879,  903774,  912563,  921249,  938329,  955037,  971395,  987423, 1003139, 1018560, 1033701,
        1048575
    }
};

static const ISP_CMOS_SHARPEN_S g_stIspYuvSharpen = {
    /* u8SkinUmin */
    110,
    /* u8SkinVmin */
    128,
    /* u8SkinUmax */
    128,
    /* u8SkinVmax */
    149,

    /* Manual Para */
    {
        /* au8LumaWgt */
        {31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31},
        /* u16TextureStr */
        {250, 420, 390, 390, 390, 390, 390, 370, 350, 330, 310, 290, 270, 270, 270, 270, 270, 270, 266, 260, 244, 230, 230, 230, 230, 230, 230, 210, 190, 190, 170, 150},
        /* u16EdgeStr */
        {120, 123, 125, 128, 130, 135, 140, 148, 160, 168, 180, 190, 200, 210, 210, 210, 210, 210, 200, 190, 185, 175, 165, 160, 146, 136, 130, 128, 125, 123, 120, 120},
        /* u16TextureFreq; */
        160,
        /* u16EdgeFreq; */
        100,
        /* u8OverShoot; */
        55,
        /* u8UnderShoot; */
        70,
        /* u8shootSupStr; */
        10,
        /* u8shootSupAdj; */
        9,
        /* u8DetailCtrl; */
        128,
        /* u8DetailCtrlThr; */
        180,
        /* u8EdgeFiltStr; */
        60,
        /*u8EdgeFiltMaxCap; */
        18,
        /*u8RGain; */
        28,
        /* u8GGain; */
        32,
        /* u8BGain; */
        31,
        /* u8SkinGain; */
        23,
        /* u8MaxSharpGain; */
        67,
        /* u8WeakDetailGain */
        6
    },
    /* Auto Para */
    {
        /* au16LumaWgt */
        /* ISO */
        /*     100,    200,    400,    800,   1600,   3200,   6400,  12800,  25600,  51200, 102400, 204800, 409600, 819200,1638400,3276800 */
        {   {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,      1,      1,      1},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,      2,      2,      2},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,      4,      4,      4},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,      5,      5,      5},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,      7,      7,      7},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,      8,      8,      8},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,      9,      9,      9},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     10,     10,     10},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     12,     12,     12},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     13,     13,     13},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     14,     14,     14},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     15,     15,     15},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     17,     17,     17},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     18,     18,     18},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     19,     19,     19},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     20,     20,     20},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     22,     22,     22},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     23,     23,     23},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     24,     24,     24},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     26,     26,     26},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     26,     26,     26},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     26,     26,     26},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     26,     26,     26},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     27,     27,     27},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     27,     27,     27},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     27,     27,     27},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     27,     27,     27},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     28,     28,     28},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     28,     28,     28},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     28,     28,     28},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     28,     28,     28},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     28,     28,     28}
        },
        /* au16TextureStr  */
        /* ISO */
        /*     100,    200,    400,    800,   1600,   3200,   6400,  12800,  25600,  51200, 102400, 204800, 409600, 819200,1638400,3276800 */
        {   {  269,    262,    190,    137,    146,    146,    131,    112,    114,    112,     87,     87,     76,     28,     28,     28},
            {  376,    312,    251,    161,    161,    161,    147,    130,    167,    130,    101,    101,    130,     43,     43,     43},
            {  463,    366,    309,    186,    176,    176,    163,    150,    221,    150,    116,    116,    185,     59,     59,     59},
            {  492,    414,    359,    210,    191,    191,    179,    168,    273,    168,    132,    132,    238,     75,     75,     75},
            {  495,    449,    402,    233,    205,    205,    195,    186,    322,    186,    147,    147,    288,     91,     91,     91},
            {  488,    463,    435,    253,    217,    217,    209,    201,    365,    201,    162,    162,    332,    106,    106,    106},
            {  476,    464,    459,    272,    229,    230,    222,    216,    406,    216,    176,    176,    372,    121,    121,    121},
            {  470,    459,    471,    289,    241,    241,    235,    230,    443,    230,    188,    188,    410,    136,    136,    136},
            {  465,    455,    476,    305,    252,    252,    247,    243,    478,    243,    199,    199,    444,    152,    152,    152},
            {  458,    452,    476,    318,    262,    261,    257,    253,    510,    253,    207,    207,    475,    167,    167,    167},
            {  451,    449,    474,    330,    271,    270,    266,    263,    541,    263,    214,    214,    503,    183,    183,    183},
            {  445,    444,    470,    340,    280,    279,    274,    271,    568,    271,    220,    220,    527,    199,    199,    199},
            {  440,    440,    466,    349,    288,    286,    281,    279,    588,    279,    225,    225,    546,    214,    214,    214},
            {  435,    435,    458,    354,    294,    291,    286,    284,    599,    284,    229,    229,    559,    228,    228,    228},
            {  429,    431,    449,    358,    299,    296,    289,    289,    605,    289,    232,    232,    568,    241,    241,    241},
            {  421,    427,    440,    361,    303,    299,    292,    292,    605,    292,    233,    233,    572,    254,    254,    254},
            {  410,    421,    429,    362,    307,    302,    294,    294,    603,    294,    235,    235,    573,    267,    267,    267},
            {  399,    411,    417,    361,    309,    302,    294,    294,    594,    294,    235,    235,    568,    283,    283,    283},
            {  386,    399,    405,    358,    309,    301,    294,    292,    579,    292,    234,    234,    556,    298,    298,    298},
            {  375,    385,    394,    353,    307,    298,    292,    288,    558,    288,    232,    232,    535,    313,    313,    313},
            {  363,    370,    382,    347,    303,    294,    289,    283,    538,    283,    228,    228,    511,    325,    325,    325},
            {  353,    352,    372,    339,    298,    289,    286,    276,    516,    276,    223,    223,    482,    338,    338,    338},
            {  336,    334,    361,    330,    292,    283,    282,    269,    489,    269,    217,    217,    450,    348,    348,    348},
            {  320,    320,    351,    320,    286,    277,    277,    262,    459,    262,    210,    210,    417,    353,    353,    353},
            {  309,    308,    339,    307,    280,    270,    271,    254,    422,    254,    201,    201,    383,    350,    350,    350},
            {  300,    299,    328,    292,    273,    263,    264,    246,    380,    246,    191,    191,    347,    343,    343,    343},
            {  290,    290,    317,    276,    266,    256,    256,    237,    335,    237,    180,    180,    309,    330,    330,    330},
            {  281,    283,    307,    260,    258,    247,    247,    228,    292,    228,    168,    168,    269,    313,    313,    313},
            {  270,    275,    296,    242,    246,    235,    235,    217,    249,    217,    155,    155,    224,    287,    287,    287},
            {  262,    269,    286,    223,    233,    223,    221,    205,    206,    205,    142,    142,    117,    254,    254,    254},
            {  256,    263,    275,    203,    220,    209,    207,    193,    163,    193,    129,    129,    128,    219,    219,    219},
            {  258,    258,    265,    184,    207,    197,    193,    182,    121,    182,    118,    118,     80,    186,    186,    186}
        },
        /* au16EdgeStr     */
        /* ISO */
        /* 100,    200,    400,    800,   1600,   3200,   6400,  12800,  25600,  51200, 102400, 204800, 409600, 819200,1638400, 3276800 */
        {   {  250,    256,    262,    237,    243,    239,    239,    252,    432,    252,    214,    214,    224,    224,    224,    224},
            {  250,    260,    270,    254,    262,    246,    246,    262,    440,    262,    223,    223,    244,    244,    244,    244},
            {  250,    264,    279,    271,    282,    253,    253,    274,    451,    274,    233,    233,    265,    265,    265,    265},
            {  250,    268,    288,    288,    301,    261,    261,    284,    466,    284,    244,    244,    285,    285,    285,    285},
            {  250,    272,    296,    303,    319,    269,    269,    294,    485,    294,    254,    254,    303,    303,    303,    303},
            {  250,    276,    305,    315,    333,    277,    277,    301,    503,    301,    264,    264,    319,    319,    319,    319},
            {  250,    280,    313,    326,    346,    285,    285,    308,    523,    308,    273,    273,    333,    333,    333,    333},
            {  250,    286,    321,    335,    358,    294,    294,    314,    544,    314,    281,    281,    346,    346,    346,    346},
            {  250,    292,    328,    345,    368,    302,    302,    319,    565,    319,    288,    288,    357,    357,    357,    357},
            {  249,    299,    334,    353,    376,    308,    308,    322,    584,    322,    293,    293,    364,    364,    364,    364},
            {  249,    307,    339,    361,    382,    315,    315,    324,    603,    324,    297,    297,    370,    370,    370,    370},
            {  249,    316,    344,    368,    387,    321,    321,    326,    622,    326,    300,    300,    374,    374,    374,    374},
            {  248,    326,    349,    375,    391,    326,    326,    328,    641,    328,    302,    302,    379,    379,    379,    379},
            {  248,    335,    353,    380,    393,    330,    330,    329,    658,    329,    304,    304,    384,    384,    384,    384},
            {  248,    344,    357,    384,    394,    333,    333,    329,    671,    329,    305,    305,    390,    390,    390,    390},
            {  247,    351,    360,    388,    394,    336,    336,    329,    673,    329,    306,    306,    394,    394,    394,    394},
            {  247,    357,    364,    391,    394,    338,    338,    330,    674,    330,    307,    307,    398,    398,    398,    398},
            {  246,    361,    367,    392,    394,    338,    338,    330,    683,    330,    307,    307,    398,    398,    398,    398},
            {  245,    364,    369,    392,    394,    337,    337,    330,    690,    330,    307,    307,    398,    398,    398,    398},
            {  244,    366,    371,    391,    393,    336,    336,    330,    695,    330,    306,    306,    398,    398,    398,    398},
            {  243,    366,    373,    388,    389,    334,    334,    329,    696,    329,    305,    305,    398,    398,    398,    398},
            {  242,    366,    375,    384,    385,    331,    331,    329,    697,    329,    303,    303,    398,    398,    398,    398},
            {  241,    366,    376,    379,    380,    329,    329,    328,    696,    328,    300,    300,    399,    399,    399,    399},
            {  241,    366,    377,    374,    375,    326,    326,    328,    697,    328,    296,    296,    402,    402,    402,    402},
            {  240,    365,    377,    366,    368,    322,    322,    326,    697,    326,    291,    291,    405,    405,    405,    405},
            {  239,    363,    377,    358,    361,    318,    318,    325,    698,    325,    285,    285,    408,    408,    408,    408},
            {  238,    361,    377,    348,    353,    314,    314,    323,    699,    323,    279,    279,    411,    411,    411,    411},
            {  238,    359,    376,    338,    345,    309,    309,    320,    700,    320,    272,    272,    413,    413,    413,    413},
            {  237,    356,    376,    326,    335,    302,    302,    314,    700,    314,    264,    264,    411,    411,    411,    411},
            {  236,    353,    375,    313,    324,    295,    295,    307,    700,    307,    257,    257,    408,    408,    408,    408},
            {  235,    351,    375,    300,    313,    288,    288,    299,    700,    299,    249,    249,    405,    405,    405,    405},
            {  235,    349,    375,    288,    303,    281,    281,    292,    700,    292,    243,    243,    402,    402,    402,    402}
        },
        /* au16TextureFreq */
        /* ISO */
        /* 100,    200,    400,    800,    1600,    3200,    6400,   12800,   25600,   51200,  102400,  204800,  409600,  819200, 1638400, 3276800 */
        {  170,    200,    180,    180,     160,     160,     155,     170,     170,     170,     170,     170,     170,     170,     170,    170},

        /* au16EdgeFreq */
        {  130,    115,    100,    100,     100,     100,     100,     100,     100,     100,      96,      96,      96,      96,      96,     96},

        /* au8OverShoot */
        {   58,     65,     75,     70,      65,      55,      40,      40,      30,      30,      40,      40,      10,      10,      10,     10},

        /* au8UnderShoot */
        {   70,     80,     90,     80,      80,      70,      60,      55,      45,      45,      50,      50,      15,      15,      15,     15},

        /* au16shootSupStr */
        {    8,      12,      7,       7,      7,       6,       5,       5,       0,       0,       0,       0,       0,       0,       0,      0},

        /* au8ShootSupAdj */
        {    8,      8,      8,       8,      7,       7,       6,       6,       0,       0,       0,       0,       0,       0,       0,      0},

        /* au8DetailCtrl */
        {  135,    135,    128,     128,    128,     128,     128,     128,     128,     128,     120,     120,     120,     120,     120,    120},

        /* au8DetailCtrlThr */
        {  160,    160,    160,     160,    160,     160,     160,     160,     160,     160,     160,     160,     160,     160,     160,    160},

        /* au8EdgeFiltStr */
        {   50,     50,     50,      55,     57,      60,      61,      62,      62,      62,      62,      62,      62,      62,      62,     62},

        /* au8EdgeFiltMaxCap */
        { 18,   18,    18,  18,    18,   18,    18,    18,      18,   18,    18,    18,    18,    18,    18,   18 },

        /* au8RGain */
        {   28,     31,     31,      31,     31,      31,      31,      31,      31,      31,      31,      31,      31,      31,      31,     31},

        /* au8GGain */
        {   32,     32,     32,      32,     32,      32,      32,      32,      32,      32,      32,      32,      32,      32,      32,     32},

        /* au8BGain */
        {   31,     31,     31,      31,     31,      31,      31,      31,      31,      31,      31,      31,      31,      31,      31,     31},

        /* au8SkinGain */
        {   27,     27,     31,      31,     31,      31,      31,      31,      31,      31,      31,      31,      31,      31,      31,     31},

        /* u8MaxSharpGain */
        {   67,     70,     72,      74,     80,      80,      80,      80,      80,      80,      80,      80,      80,      80,      80,     80},
        /* au8WeakDetailGain                          */
        {   0,       0,     0,       0,     0,      0,         0,         0,     0,         0,     0,      0,      0,      0,        0,      0  }

    },
};

static const ISP_CMOS_SHARPEN_S g_stIspYuvSharpenWdr = {
    /* u8SkinUmin */
    110,
    /* u8SkinVmin */
    128,
    /* u8SkinUmax */
    128,
    /* u8SkinVmax */
    149,

    /* Manual Para */
    {
        /* au8LumaWgt */
        {31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31},
        /* u16TextureStr */
        {250, 420, 390, 390, 390, 390, 390, 370, 350, 330, 310, 290, 270, 270, 270, 270, 270, 270, 266, 260, 244, 230, 230, 230, 230, 230, 230, 210, 190, 190, 170, 150},
        /* u16EdgeStr */
        {120, 123, 125, 128, 130, 135, 140, 148, 160, 168, 180, 190, 200, 210, 210, 210, 210, 210, 200, 190, 185, 175, 165, 160, 146, 136, 130, 128, 125, 123, 120, 120},
        /* u16TextureFreq; */
        160,
        /* u16EdgeFreq; */
        100,
        /* u8OverShoot; */
        55,
        /* u8UnderShoot; */
        70,
        /* u8shootSupStr; */
        10,
        /* u8shootSupAdj; */
        9,
        /* u8DetailCtrl; */
        128,
        /* u8DetailCtrlThr; */
        180,
        /* u8EdgeFiltStr; */
        60,
        /*u8EdgeFiltMaxCap; */
        18,
        /*u8RGain; */
        28,
        /* u8GGain; */
        32,
        /* u8BGain; */
        31,
        /* u8SkinGain; */
        23,
        /* u8MaxSharpGain; */
        67,
        /* u8WeakDetailGain */
        6
    },
    /* Auto Para */
    {
        /* au16LumaWgt */
        /* ISO */
        /*     100,    200,    400,    800,   1600,   3200,   6400,  12800,  25600,  51200, 102400, 204800, 409600, 819200,1638400,3276800 */
        {   {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,      1,      1,      1},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,      2,      2,      2},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,      4,      4,      4},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,      5,      5,      5},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,      7,      7,      7},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,      8,      8,      8},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,      9,      9,      9},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     10,     10,     10},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     12,     12,     12},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     13,     13,     13},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     14,     14,     14},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     15,     15,     15},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     17,     17,     17},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     18,     18,     18},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     19,     19,     19},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     20,     20,     20},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     22,     22,     22},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     23,     23,     23},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     24,     24,     24},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     26,     26,     26},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     26,     26,     26},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     26,     26,     26},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     26,     26,     26},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     27,     27,     27},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     27,     27,     27},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     27,     27,     27},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     27,     27,     27},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     28,     28,     28},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     28,     28,     28},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     28,     28,     28},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     28,     28,     28},
            {   31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     31,     28,     28,     28}
        },
        /* au16TextureStr  */
        /* ISO */
        /*     100,    200,    400,    800,   1600,   3200,   6400,  12800,  25600,  51200, 102400, 204800, 409600, 819200,1638400,3276800 */
        {   {  265,    235,    201,    190,    182,    135,    135,    101,     93,     70,     70,     70,     76,     28,     28,     28},
            {  285,    261,    223,    210,    201,    153,    153,    112,    104,     77,     77,     77,    130,     43,     43,     43},
            {  307,    289,    247,    232,    221,    172,    172,    123,    115,     85,     85,     85,    185,     59,     59,     59},
            {  327,    315,    269,    252,    240,    190,    190,    134,    126,     93,     93,     93,    238,     75,     75,     75},
            {  347,    338,    290,    271,    258,    207,    207,    146,    137,    101,    101,    101,    288,     91,     91,     91},
            {  365,    356,    308,    286,    273,    221,    221,    158,    146,    107,    107,    107,    332,    106,    106,    106},
            {  382,    371,    325,    300,    288,    233,    233,    171,    156,    114,    114,    114,    372,    121,    121,    121},
            {  398,    384,    340,    312,    301,    245,    245,    184,    165,    120,    120,    120,    410,    136,    136,    136},
            {  411,    396,    353,    324,    313,    256,    256,    197,    174,    127,    127,    127,    444,    152,    152,    152},
            {  420,    405,    363,    334,    321,    265,    265,    208,    183,    134,    134,    134,    475,    167,    167,    167},
            {  428,    412,    371,    343,    328,    274,    274,    220,    192,    141,    141,    141,    503,    183,    183,    183},
            {  433,    417,    377,    350,    334,    282,    282,    231,    200,    148,    148,    148,    527,    199,    199,    199},
            {  438,    421,    383,    357,    339,    290,    290,    241,    207,    154,    154,    154,    546,    214,    214,    214},
            {  440,    423,    386,    361,    343,    296,    296,    249,    211,    157,    157,    157,    559,    228,    228,    228},
            {  441,    423,    389,    364,    347,    301,    301,    256,    213,    160,    160,    160,    568,    241,    241,    241},
            {  441,    422,    390,    366,    349,    306,    306,    262,    215,    161,    161,    161,    572,    254,    254,    254},
            {  440,    421,    391,    368,    351,    309,    309,    265,    216,    163,    163,    163,    573,    267,    267,    267},
            {  438,    418,    391,    367,    350,    310,    310,    263,    215,    163,    163,    163,    568,    283,    283,    283},
            {  434,    413,    390,    365,    348,    310,    310,    257,    214,    163,    163,    163,    556,    298,    298,    298},
            {  427,    406,    385,    362,    345,    307,    307,    250,    210,    161,    161,    161,    535,    313,    313,    313},
            {  417,    397,    377,    357,    340,    302,    302,    243,    205,    157,    157,    157,    511,    325,    325,    325},
            {  406,    386,    367,    352,    335,    296,    296,    235,    198,    152,    152,    152,    482,    338,    338,    338},
            {  393,    374,    356,    345,    329,    289,    289,    226,    191,    146,    146,    146,    450,    348,    348,    348},
            {  381,    362,    345,    338,    322,    281,    281,    218,    184,    140,    140,    140,    417,    353,    353,    353},
            {  368,    349,    334,    328,    313,    271,    271,    208,    176,    132,    132,    132,    383,    350,    350,    350},
            {  356,    335,    323,    317,    303,    260,    260,    198,    167,    124,    124,    124,    347,    343,    343,    343},
            {  343,    322,    312,    305,    291,    247,    247,    188,    159,    115,    115,    115,    309,    330,    330,    330},
            {  330,    309,    300,    292,    279,    235,    235,    178,    150,    108,    108,    108,    269,    313,    313,    313},
            {  316,    296,    285,    277,    264,    221,    221,    167,    140,    100,    100,    100,    224,    287,    287,    287},
            {  301,    283,    270,    261,    247,    206,    206,    157,    130,     93,     93,     93,    117,    254,    254,    254},
            {  287,    270,    254,    245,    230,    191,    191,    147,    120,     86,     86,     86,    128,    219,    219,    219},
            {  273,    258,    239,    229,    214,    176,    176,    137,    110,     80,     80,     80,     80,    186,    186,    186}
        },
        /* au16EdgeStr     */
        /* ISO */
        /* 100,    200,    400,    800,   1600,   3200,   6400,  12800,  25600,  51200, 102400, 204800, 409600, 819200,1638400, 3276800 */
        {   {  313,    313,    281,    311,    317,    317,    393,    393,    393,    338,    338,    338,    224,    224,    224,    224},
            {  317,    317,    282,    315,    317,    317,    393,    393,    393,    338,    338,    338,    244,    244,    244,    244},
            {  322,    322,    283,    320,    318,    317,    393,    393,    393,    338,    338,    338,    265,    265,    265,    265},
            {  327,    327,    285,    325,    319,    318,    393,    393,    393,    338,    338,    338,    285,    285,    285,    285},
            {  332,    332,    287,    331,    320,    318,    393,    393,    393,    338,    338,    338,    303,    303,    303,    303},
            {  336,    336,    288,    336,    321,    318,    393,    393,    393,    338,    338,    338,    319,    319,    319,    319},
            {  341,    341,    290,    341,    322,    319,    393,    393,    393,    338,    338,    338,    333,    333,    333,    333},
            {  345,    345,    291,    347,    322,    319,    393,    393,    393,    338,    338,    338,    346,    346,    346,    346},
            {  349,    349,    293,    352,    323,    320,    393,    393,    393,    338,    338,    338,    357,    357,    357,    357},
            {  352,    352,    294,    357,    324,    320,    393,    393,    393,    338,    338,    338,    364,    364,    364,    364},
            {  355,    355,    296,    362,    325,    320,    393,    393,    393,    338,    338,    338,    370,    370,    370,    370},
            {  358,    358,    297,    367,    326,    321,    393,    393,    393,    338,    338,    338,    374,    374,    374,    374},
            {  360,    360,    299,    371,    327,    321,    393,    393,    393,    338,    338,    338,    379,    379,    379,    379},
            {  363,    363,    300,    375,    327,    321,    393,    393,    393,    338,    338,    338,    384,    384,    384,    384},
            {  365,    365,    301,    378,    328,    321,    393,    393,    393,    338,    338,    338,    390,    390,    390,    390},
            {  366,    366,    302,    380,    329,    321,    393,    393,    393,    338,    338,    338,    394,    394,    394,    394},
            {  368,    368,    303,    383,    330,    322,    393,    393,    393,    338,    338,    338,    398,    398,    398,    398},
            {  368,    368,    303,    384,    330,    322,    393,    393,    393,    338,    338,    338,    398,    398,    398,    398},
            {  369,    369,    304,    385,    331,    322,    393,    393,    393,    338,    338,    338,    398,    398,    398,    398},
            {  369,    369,    304,    385,    332,    321,    393,    393,    393,    338,    338,    338,    398,    398,    398,    398},
            {  369,    369,    304,    384,    332,    321,    393,    393,    393,    338,    338,    338,    398,    398,    398,    398},
            {  368,    368,    304,    383,    333,    321,    393,    393,    393,    338,    338,    338,    398,    398,    398,    398},
            {  367,    367,    304,    381,    333,    321,    393,    393,    393,    338,    338,    338,    399,    399,    399,    399},
            {  366,    366,    304,    380,    334,    321,    393,    393,    393,    338,    338,    338,    402,    402,    402,    402},
            {  364,    364,    304,    378,    335,    320,    393,    393,    393,    338,    338,    338,    405,    405,    405,    405},
            {  362,    362,    304,    375,    335,    320,    393,    393,    393,    338,    338,    338,    408,    408,    408,    408},
            {  360,    360,    303,    373,    336,    320,    393,    393,    393,    338,    338,    338,    411,    411,    411,    411},
            {  358,    358,    303,    371,    336,    320,    393,    393,    393,    338,    338,    338,    413,    413,    413,    413},
            {  356,    356,    303,    369,    337,    319,    393,    393,    393,    338,    338,    338,    411,    411,    411,    411},
            {  353,    353,    303,    367,    337,    319,    393,    393,    393,    338,    338,    338,    408,    408,    408,    408},
            {  351,    351,    303,    365,    338,    319,    393,    393,    393,    338,    338,    338,    405,    405,    405,    405},
            {  349,    349,    303,    364,    339,    319,    393,    393,    393,    338,    338,    338,    402,    402,    402,    402}
        },
        /* au16TextureFreq */
        /* ISO */
        /* 100,    200,    400,    800,    1600,    3200,    6400,   12800,   25600,   51200,  102400,  204800,  409600,  819200, 1638400, 3276800 */
        {  160,    170,    180,    180,     160,     160,     155,     170,     170,     170,     170,     170,     170,     170,     170,    170},

        /* au16EdgeFreq */
        {  130,    115,    100,    100,     100,     100,     100,     100,     100,     100,      96,      96,      96,      96,      96,     96},

        /* au8OverShoot */
        {   58,     70,     75,     70,      65,      55,      40,      40,      30,      30,      40,      40,      10,      10,      10,     10},

        /* au8UnderShoot */
        {   70,     87,     90,     80,      80,      70,      60,      55,      45,      45,      50,      50,      15,      15,      15,     15},

        /* au16shootSupStr */
        {    8,      8,      7,       7,      7,       6,       5,       5,       0,       0,       0,       0,       0,       0,       0,      0},

        /* au8ShootSupAdj */
        {    9,      9,      8,       8,      7,       7,       6,       6,       0,       0,       0,       0,       0,       0,       0,      0},

        /* au8DetailCtrl */
        {  128,    128,    128,     128,    128,     128,     128,     128,     128,     128,     120,     120,     120,     120,     120,    120},

        /* au8DetailCtrlThr */
        {  160,    160,    160,     160,    160,     160,     160,     160,     160,     160,     160,     160,     160,     160,     160,    160},

        /* au8EdgeFiltStr */
        {   50,     50,     50,      55,     57,      60,      61,      62,      62,      62,      62,      62,      62,      62,      62,     62},

        /* au8EdgeFiltMaxCap */
        { 18,   18,    18,  18,    18,   18,    18,    18,      18,   18,    18,    18,    18,    18,    18,   18 },

        /* au8RGain */
        {   28,     31,     31,      31,     31,      31,      31,      31,      31,      31,      31,      31,      31,      31,      31,     31},

        /* au8GGain */
        {   32,     32,     32,      32,     32,      32,      32,      32,      32,      32,      32,      32,      32,      32,      32,     32},

        /* au8BGain */
        {   31,     31,     31,      31,     31,      31,      31,      31,      31,      31,      31,      31,      31,      31,      31,     31},

        /* au8SkinGain */
        {   25,     27,     31,      31,     31,      31,      31,      31,      31,      31,      31,      31,      31,      31,      31,     31},

        /* u8MaxSharpGain */
        {   67,     70,     72,      74,     80,      80,      80,      80,      80,      80,      80,      80,      80,      80,      80,     80},
        /* au8WeakDetailGain                          */
        {   0,       0,     0,       0,     0,      0,         0,         0,     0,         0,     0,      0,      0,      0,        0,      0  }

    },
};

static AWB_CCM_S g_stAwbCcm = {
    3,
    {
        {
            4884,
            {
                0x01DA,  0x80C7,  0x8013,
                0x8068,  0x01D9,  0x8071,
                0x8001,  0x80EA,  0x01EB,
            },
        },
        {
            3636,
            {
                0x01FD,  0x80F2,  0x800B,
                0x808F,  0x01F2,  0x8063,
                0x0008,  0x80F1,  0x01E9,
            },
        },
        {
            2430,
            {
                0x01FD,  0x80F2,  0x800B,
                0x808F,  0x01F2,  0x8063,
                0x0008,  0x80F1,  0x01E9,
            },
        },
        {
            2100,
            {
                0x0100,  0x0000,  0x0000,
                0x0000,  0x0100,  0x0000,
                0x0000,  0x0000,  0x0100
            },
        },
        {
            1600,
            {
                0x0100,  0x0000,  0x0000,
                0x0000,  0x0100,  0x0000,
                0x0000,  0x0000,  0x0100
            },
        },
        {
            1400,
            {
                0x0100,  0x0000,  0x0000,
                0x0000,  0x0100,  0x0000,
                0x0000,  0x0000,  0x0100
            },
        },
        {
            1000,
            {
                0x0100,  0x0000,  0x0000,
                0x0000,  0x0100,  0x0000,
                0x0000,  0x0000,  0x0100
            },
        },
    },
};

static AWB_CCM_S g_stAwbCcmFsWdr = {
    3,
    {
        {
            4884,
            {
                0x01DA,  0x80C7,  0x8013,
                0x8068,  0x01D9,  0x8071,
                0x8001,  0x80EA,  0x01EB,
            },
        },
        {
            3636,
            {
                0x01FD,  0x80F2,  0x800B,
                0x808F,  0x01F2,  0x8063,
                0x0008,  0x80F1,  0x01E9,
            },
        },
        {
            2430,
            {
                0x01FD,  0x80F2,  0x800B,
                0x808F,  0x01F2,  0x8063,
                0x0008,  0x80F1,  0x01E9,
            },
        },
        {
            2100,
            {
                0x0100,  0x0000,  0x0000,
                0x0000,  0x0100,  0x0000,
                0x0000,  0x0000,  0x0100
            },
        },
        {
            1600,
            {
                0x0100,  0x0000,  0x0000,
                0x0000,  0x0100,  0x0000,
                0x0000,  0x0000,  0x0100
            },
        },
        {
            1400,
            {
                0x0100,  0x0000,  0x0000,
                0x0000,  0x0100,  0x0000,
                0x0000,  0x0000,  0x0100
            },
        },
        {
            1000,
            {
                0x0100,  0x0000,  0x0000,
                0x0000,  0x0100,  0x0000,
                0x0000,  0x0000,  0x0100
            },
        },
    },
};


static AWB_AGC_TABLE_S g_stAwbAgcTable = {
    /* bvalid */
    1,

    /* saturation */
    /*  1,    2,    4,    8,   16,   32,   64,  128,  256,  512, 1024, 2048, 4096, 8192, 16384, 32768 */
    {0x80, 0x78, 0x73, 0x6E, 0x69, 0x5F, 0x58, 0x50, 0x48, 0x40, 0x38, 0x38, 0x38, 0x38,  0x38,  0x38}
};

static AWB_AGC_TABLE_S g_stAwbAgcTableFSWDR = {
    /* bvalid */
    1,

    /* saturation */
    /*  1,    2,    4,    8,   16,   32,   64,  128,  256,  512, 1024, 2048, 4096, 8192, 16384, 32768 */
    { 128,  120,  115,  110,  105,  100,   95,   90,   85,   80,   75,   70,   56,   56,    56,    56}
};

static const ISP_CMOS_WDR_S g_stIspWDR = {
    /* bFusionMode */
    1,

    /* bMotionComp */
    1,

    /* u16ShortThr */
    4032,

    /* u16LongThr */
    3008,

    /* bForceLong */
    1,

    /* u16ForceLongLowThr */

    500,

    /* u16ForceLongHigThr */
    700,

    /* bShortExpoChk */
    0,

    /* u16ShortCheckThd */
    0x8,

    /* au8MdThrLowGain[16] */
    /* 1,    2,    4,    8,   16,   32,   64,  128,  256,  512, 1024, 2048, 4096, 8192, 16384, 32768 */
    { 64,   64,   64,   64,  128,  255,  255,  255,  255,  255,  255,  255,  255,  255,   255,   255},

    /* au8MdThrHigGain[16] */
    {128,  128,  128,  128,  128,  255,  255,  255,  255,  255,  255,  255,  255,  255,   255,   255},

    /* au16FusionThr[2] */
    {3855, 3000},

    /* u8MdtStillThd */
    0x14,

    /* u8MdtLongBlend */
    0x0
};

static const ISP_CMOS_DEHAZE_S g_stIspDehaze = {
    /* bEnable */
    0,
    /* bUserLutEnable */
    0,
    /* enOpType */
    0,
    /* u8AutoStrength */
    128,
    /* u8ManualStrength */
    128
};

static const ISP_CMOS_DEHAZE_S g_stIspDehazeWDR = {
    /* bEnable */
    1,
    /* bUserLutEnable */
    1,
    /* enOpType */
    1,
    /* u8AutoStrength */
    100,
    /* u8ManualStrength */
    128
};


static const ISP_CMOS_DRC_S g_stIspDRC = {
    /* bEnable */
    0,
    /* enOpType */
    0,
    /* u16ManualStrength */
    512,
    /* u16AutoStrength */
    512,
    /* u8SpatialFltCoef */
    1,
    /* u8RangeFltCoef */
    2,
    /* u8ContrastControl */
    8,
    /* s8DetailAdjustFactor */
    0,
    /* u8RangeAdaMax */
    8,
    /* u8FltScaleFine */
    6,
    /* u8FltScaleCoarse */
    6,
    /* u8GradRevMax */
    64,
    /* u8GradRevThr */
    50,
    /* u8BrightGainLmt */
    12,
    /* u8BrightGainLmtStep */
    8,
    /* u8DarkGainLmtY */
    0,
    /* u8DarkGainLmtC */
    0,
    /* u8PDStrength */
    35,
    /* u8LocalMixingBrightMax */
    64,
    /* u8LocalMixingBrightMin */
    32,
    /* u8LocalMixingBrightThr */
    96,
    /* s8LocalMixingBrightSlo */
    -3,
    /* u8LocalMixingDarkMax */
    64,
    /* u8LocalMixingDarkMin */
    32,
    /* u8LocalMixingDarkThr */
    200,
    /* s8LocalMixingDarkSlo */
    5,
    /* ColorCorrectionLut[33] */
    {1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024},
    /* ToneMappingValue[200] */
    {8, 8, 16, 24, 31, 39, 48, 56, 65, 75, 85, 95, 106, 118, 130, 143, 156, 170, 185, 201, 218, 235, 254, 274, 294, 316, 339, 364, 390, 417, 446, 477, 509, 543, 579, 617, 658, 701, 746, 794, 844, 898, 955, 1015, 1078, 1145, 1216,
     1291, 1370, 1454, 1543, 1637, 1736, 1841, 1952, 2069, 2194, 2325, 2465, 2612, 2767, 2932, 3106, 3290, 3485, 3691, 3909, 4140, 4384, 4641, 4914, 5202, 5507, 5830, 6171, 6531, 6913, 7316, 7742, 8193, 8669, 9173, 9705, 10268,
     10863, 11492, 12145, 12808, 13483, 14171, 14872, 15587, 16319, 17069, 17840, 18635, 19458, 19881, 20313, 20754, 21204, 21661, 22122, 22586, 23053, 23525, 24000, 24480, 24965, 25455, 25950, 26451, 26959, 27473, 27995, 28524,
     29062, 29609, 30165, 30732, 31309, 31899, 32501, 33116, 33746, 34391, 35043, 35706, 36381, 37066, 37763, 38472, 39192, 39925, 40671, 41429, 42201, 42591, 42986, 43383, 43784, 44189, 44597, 45008, 45424, 45842, 46265, 46691,
     47121, 47555, 47993, 48434, 48880, 49329, 49783, 50241, 50703, 51169, 51639, 52113, 52592, 53075, 53564, 54056, 54552, 55054, 55560, 56071, 56586, 56846, 57107, 57369, 57632, 57896, 58162, 58429, 58697, 58967, 59238, 59510,
     59783, 60057, 60333, 60611, 60889, 61169, 61451, 61733, 62017, 62303, 62589, 62877, 63167, 63458, 63750, 64044, 64340, 64636, 64934, 65234},
    /* u8Asymmetry */
    2,
    /* u8SecondPole */
    180,
    /* u8Stretch */
    54,
    /* u8Compress */
    180,
    /* u8CurveSel */
    0,
    /* au16Xpoint */
    {0, 200, 400, 600, 1000},
    /* au16Ypoint */
    {0, 200, 400, 600, 1000},
    /* au16Slope */
    {1000, 1000, 1000, 1000, 1000}
};

static const ISP_CMOS_DRC_S g_stIspDRCWDR = {
    /* bEnable */
    1,
    /* enOpType */
    0,
    /* u16ManualStrength */
    1023,
    /* u16AutoStrength */
    512,
    /* u8SpatialFltCoef */
    0,
    /* u8RangeFltCoef */
    1,
    /* u8ContrastControl */
    8,
    /* s8DetailAdjustFactor */
    10,
    /* u8RangeAdaMax */
    4,
    /* u8FltScaleFine */
    3,
    /* u8FltScaleCoarse */
    3,
    /* u8GradRevMax */
    30,
    /* u8GradRevThr */
    50,
    /* u8BrightGainLmt */
    15,
    /* u8BrightGainLmtStep */
    10,
    /* u8DarkGainLmtY */
    0,
    /* u8DarkGainLmtC */
    12,
    /* u8PDStrength */
    35,
    /* u8LocalMixingBrightMax */
    32,
    /* u8LocalMixingBrightMin */
    20,
    /* u8LocalMixingBrightThr */
    96,
    /* s8LocalMixingBrightSlo */
    -3,
    /* u8LocalMixingDarkMax */
    30,
    /* u8LocalMixingDarkMin */
    20,
    /* u8LocalMixingDarkThr */
    200,
    /* s8LocalMixingDarkSlo */
    5,
    /* ColorCorrectionLut[33] */
    {1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 772, 768, 764, 760, 756, 752, 748, 744, 740, 736, 732, 728, 724, 720, 716, 712, 708, 704, 700},
    /* ToneMappingValue[200] */
    {8, 8, 16, 24, 31, 39, 48, 56, 65, 75, 85, 95, 106, 118, 130, 143, 156, 170, 185, 201, 218, 235, 254, 274, 294, 316, 339, 364, 390, 417, 446, 477, 509, 543, 579, 617, 658, 701, 746, 794, 844, 898, 955, 1015, 1078, 1145, 1216,
     1291, 1370, 1454, 1543, 1637, 1736, 1841, 1952, 2069, 2194, 2325, 2465, 2612, 2767, 2932, 3106, 3290, 3485, 3691, 3909, 4140, 4384, 4641, 4914, 5202, 5507, 5830, 6171, 6531, 6913, 7316, 7742, 8193, 8669, 9173, 9705, 10268,
     10863, 11492, 12145, 12808, 13483, 14171, 14872, 15587, 16319, 17069, 17840, 18635, 19458, 19881, 20313, 20754, 21204, 21661, 22122, 22586, 23053, 23525, 24000, 24480, 24965, 25455, 25950, 26451, 26959, 27473, 27995, 28524,
     29062, 29609, 30165, 30732, 31309, 31899, 32501, 33116, 33746, 34391, 35043, 35706, 36381, 37066, 37763, 38472, 39192, 39925, 40671, 41429, 42201, 42591, 42986, 43383, 43784, 44189, 44597, 45008, 45424, 45842, 46265, 46691,
     47121, 47555, 47993, 48434, 48880, 49329, 49783, 50241, 50703, 51169, 51639, 52113, 52592, 53075, 53564, 54056, 54552, 55054, 55560, 56071, 56586, 56846, 57107, 57369, 57632, 57896, 58162, 58429, 58697, 58967, 59238, 59510,
     59783, 60057, 60333, 60611, 60889, 61169, 61451, 61733, 62017, 62303, 62589, 62877, 63167, 63458, 63750, 64044, 64340, 64636, 64934, 65234},
    /* u8Asymmetry */
    6,
    /* u8SecondPole */
    180,
    /* u8Stretch */
    50,
    /* u8Compress */
    150,
    /* u8CurveSel */
    0,
    /* au16Xpoint */
    {0, 200, 400, 600, 1000},
    /* au16Ypoint */
    {0, 200, 400, 600, 1000},
    /* au16Slope */
    {1000, 1000, 1000, 1000, 1000}
};

static const ISP_CMOS_CA_S g_stIspCA = {
    /* CA */
    1,
    /* Y */
    {
        516, 525, 534, 544, 554, 563, 573, 583, 594, 604, 614, 624, 634, 644, 654, 664,
        674, 684, 694, 704, 713, 723, 732, 741, 750, 758, 766, 775, 782, 790, 797, 804,
        811, 817, 823, 828, 834, 839, 844, 848, 853, 857, 861, 865, 868, 872, 875, 878,
        881, 884, 887, 890, 892, 895, 898, 900, 903, 905, 908, 910, 913, 915, 918, 921,
        924, 926, 929, 932, 935, 937, 940, 943, 945, 948, 950, 952, 955, 957, 959, 961,
        964, 966, 968, 970, 972, 974, 976, 978, 979, 981, 983, 985, 987, 988, 990, 992,
        993, 994, 995, 996, 997, 998, 998, 999, 1000, 1001, 1002, 1002, 1003, 1004, 1005, 1006,
        1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1018, 1019, 1020, 1022, 1024
    },
    /* ISO */
    /*  1,    2,    4,    8,   16,   32,   64,  128,  256,  512, 1024, 2048, 4096, 8192, 16384, 32768 */
    {1300, 1300, 1250, 1200, 1150, 1100, 1050, 1000,  950,  900,  900,  800,  800,  800,   800,   800}
};


static const ISP_CMOS_LSC_S g_stCmosLsc = {
    /* MeshStrength */
    256,
    /* MeshScale */
    1,
    /* ISP_LSC_CABLI_TABLE_S */
    {
        {
            // Rgain:
            {
                560, 476, 421, 382, 356, 337, 322, 313, 308, 308, 313, 325, 338, 360, 391, 433, 492,
                526, 456, 408, 370, 346, 328, 316, 305, 301, 301, 305, 316, 331, 351, 376, 417, 466,
                501, 438, 396, 364, 340, 321, 308, 299, 295, 295, 300, 309, 322, 340, 366, 400, 447,
                483, 425, 385, 355, 334, 316, 302, 293, 288, 289, 294, 304, 317, 336, 357, 388, 428,
                472, 418, 379, 351, 328, 308, 294, 284, 279, 280, 287, 298, 313, 330, 352, 382, 420,
                462, 411, 377, 349, 321, 301, 285, 274, 270, 270, 279, 292, 309, 328, 351, 376, 409,
                459, 410, 376, 343, 314, 292, 280, 268, 262, 263, 270, 283, 304, 324, 348, 373, 406,
                459, 411, 375, 340, 309, 288, 273, 262, 260, 258, 265, 279, 297, 323, 348, 375, 404,
                460, 413, 372, 336, 307, 285, 271, 260, 257, 256, 262, 275, 294, 320, 348, 374, 406,
                466, 413, 369, 334, 305, 285, 271, 261, 258, 257, 262, 274, 292, 319, 348, 377, 407,
                470, 418, 369, 333, 305, 287, 275, 263, 258, 258, 263, 275, 293, 318, 349, 380, 411,
                481, 421, 371, 334, 310, 292, 278, 268, 262, 263, 269, 280, 295, 321, 351, 385, 420,
                492, 424, 374, 337, 314, 296, 284, 274, 268, 270, 276, 286, 302, 326, 355, 391, 429,
                502, 437, 379, 343, 320, 306, 291, 282, 276, 279, 284, 294, 309, 332, 362, 398, 441,
                520, 444, 391, 352, 332, 313, 299, 290, 285, 287, 293, 302, 315, 338, 368, 408, 452,
                540, 461, 402, 363, 340, 323, 308, 300, 296, 299, 302, 311, 324, 346, 378, 420, 469,
                566, 480, 416, 377, 351, 331, 317, 309, 309, 308, 311, 320, 333, 355, 388, 434, 508
            },

            // Grgain:
            {
                499, 434, 391, 362, 341, 326, 314, 305, 302, 302, 307, 315, 329, 346, 369, 405, 447,
                471, 417, 379, 354, 334, 319, 307, 299, 296, 297, 301, 309, 322, 338, 361, 391, 432,
                451, 404, 372, 347, 327, 313, 302, 294, 292, 291, 295, 302, 316, 332, 351, 377, 414,
                441, 395, 366, 342, 324, 308, 297, 289, 285, 286, 291, 298, 310, 327, 345, 368, 401,
                430, 392, 361, 339, 320, 303, 290, 281, 277, 279, 285, 295, 307, 324, 342, 363, 393,
                429, 388, 361, 337, 314, 296, 281, 272, 267, 268, 277, 289, 304, 320, 340, 360, 388,
                423, 386, 360, 334, 307, 288, 277, 265, 261, 261, 269, 282, 300, 320, 338, 359, 384,
                424, 389, 360, 330, 303, 283, 269, 260, 258, 258, 263, 277, 296, 317, 338, 360, 382,
                428, 392, 359, 327, 300, 281, 267, 258, 257, 256, 260, 273, 291, 315, 338, 361, 385,
                432, 393, 355, 325, 299, 281, 269, 258, 256, 256, 261, 273, 289, 312, 339, 362, 387,
                437, 395, 354, 325, 299, 282, 272, 261, 257, 257, 263, 274, 290, 313, 339, 366, 390,
                444, 397, 355, 325, 303, 286, 275, 266, 261, 262, 269, 277, 292, 314, 341, 368, 396,
                453, 401, 359, 327, 305, 291, 280, 271, 265, 269, 273, 283, 297, 318, 344, 374, 402,
                462, 406, 365, 333, 314, 298, 286, 278, 273, 276, 282, 291, 302, 323, 347, 379, 413,
                473, 415, 372, 341, 322, 307, 293, 287, 283, 286, 289, 298, 309, 328, 353, 388, 422,
                493, 431, 382, 351, 330, 315, 302, 294, 292, 295, 299, 306, 316, 336, 362, 397, 435,
                511, 444, 393, 361, 338, 322, 309, 304, 304, 302, 305, 311, 324, 343, 369, 407, 466
            },

            // Gbgain:
            {
                498, 432, 390, 362, 341, 324, 313, 304, 301, 302, 306, 315, 329, 346, 370, 406, 450,
                470, 416, 381, 353, 333, 318, 307, 299, 296, 296, 301, 308, 321, 338, 359, 391, 432,
                452, 405, 373, 347, 327, 313, 302, 295, 291, 291, 295, 302, 314, 332, 351, 378, 414,
                441, 397, 365, 342, 323, 308, 297, 289, 285, 287, 290, 298, 311, 327, 346, 368, 401,
                432, 392, 360, 340, 319, 303, 289, 281, 277, 278, 284, 295, 307, 323, 342, 363, 394,
                426, 388, 361, 337, 313, 294, 281, 272, 267, 268, 276, 288, 304, 320, 339, 360, 387,
                424, 390, 361, 333, 307, 288, 277, 264, 261, 261, 268, 281, 300, 319, 339, 359, 384,
                424, 391, 360, 330, 303, 284, 269, 261, 258, 257, 264, 276, 294, 318, 338, 359, 385,
                429, 392, 359, 327, 301, 281, 268, 259, 257, 256, 261, 272, 290, 314, 338, 361, 385,
                434, 394, 357, 325, 299, 281, 269, 259, 256, 256, 261, 272, 289, 312, 339, 365, 386,
                438, 395, 355, 324, 300, 283, 272, 261, 257, 257, 264, 274, 290, 313, 339, 366, 392,
                445, 398, 356, 324, 303, 287, 275, 265, 260, 261, 269, 277, 292, 314, 340, 369, 398,
                453, 402, 359, 326, 307, 292, 279, 272, 266, 268, 273, 283, 297, 318, 343, 374, 405,
                463, 409, 366, 333, 312, 298, 286, 278, 273, 277, 282, 290, 302, 323, 350, 381, 413,
                476, 418, 373, 340, 321, 307, 293, 286, 283, 286, 289, 298, 308, 329, 355, 387, 423,
                492, 430, 383, 351, 330, 316, 302, 295, 292, 294, 298, 306, 315, 336, 361, 397, 436,
                515, 444, 392, 360, 339, 322, 311, 304, 303, 302, 306, 313, 324, 343, 369, 406, 468
            },

            // Bgain:
            {
                483, 424, 385, 358, 341, 324, 311, 304, 301, 301, 306, 315, 329, 344, 368, 402, 443,
                459, 412, 377, 352, 332, 317, 308, 298, 295, 296, 299, 308, 320, 337, 357, 387, 424,
                440, 399, 369, 345, 327, 313, 304, 295, 291, 291, 295, 303, 316, 330, 350, 377, 411,
                430, 392, 363, 341, 322, 308, 297, 288, 283, 286, 288, 298, 310, 326, 344, 369, 399,
                423, 388, 359, 338, 319, 302, 290, 281, 275, 279, 283, 294, 306, 324, 341, 364, 392,
                420, 387, 361, 337, 313, 295, 280, 271, 267, 268, 276, 288, 304, 320, 339, 357, 385,
                419, 387, 362, 335, 306, 286, 275, 264, 261, 260, 268, 281, 299, 320, 339, 360, 382,
                419, 388, 361, 329, 301, 282, 269, 260, 257, 257, 263, 275, 295, 316, 338, 358, 382,
                424, 394, 358, 327, 298, 280, 267, 258, 256, 256, 260, 272, 290, 314, 338, 362, 381,
                427, 394, 356, 326, 297, 280, 268, 259, 256, 256, 260, 272, 288, 311, 338, 363, 384,
                436, 397, 356, 324, 298, 282, 271, 261, 256, 258, 264, 273, 288, 311, 339, 366, 390,
                443, 399, 356, 324, 302, 286, 275, 266, 261, 262, 269, 278, 291, 314, 339, 369, 397,
                451, 403, 359, 327, 306, 292, 279, 270, 266, 268, 274, 283, 296, 317, 342, 373, 402,
                461, 412, 366, 332, 313, 297, 285, 278, 273, 277, 282, 290, 301, 322, 350, 380, 413,
                471, 419, 375, 340, 321, 307, 292, 286, 282, 286, 290, 299, 308, 328, 353, 386, 420,
                488, 429, 383, 351, 329, 315, 301, 294, 293, 295, 298, 306, 315, 333, 359, 395, 435,
                508, 444, 394, 363, 338, 322, 311, 304, 305, 304, 306, 314, 323, 342, 370, 406, 465
            },
        },

        {
            // Rgain:
            {
                560, 476, 421, 382, 356, 337, 322, 313, 308, 308, 313, 325, 338, 360, 391, 433, 492,
                526, 456, 408, 370, 346, 328, 316, 305, 301, 301, 305, 316, 331, 351, 376, 417, 466,
                501, 438, 396, 364, 340, 321, 308, 299, 295, 295, 300, 309, 322, 340, 366, 400, 447,
                483, 425, 385, 355, 334, 316, 302, 293, 288, 289, 294, 304, 317, 336, 357, 388, 428,
                472, 418, 379, 351, 328, 308, 294, 284, 279, 280, 287, 298, 313, 330, 352, 382, 420,
                462, 411, 377, 349, 321, 301, 285, 274, 270, 270, 279, 292, 309, 328, 351, 376, 409,
                459, 410, 376, 343, 314, 292, 280, 268, 262, 263, 270, 283, 304, 324, 348, 373, 406,
                459, 411, 375, 340, 309, 288, 273, 262, 260, 258, 265, 279, 297, 323, 348, 375, 404,
                460, 413, 372, 336, 307, 285, 271, 260, 257, 256, 262, 275, 294, 320, 348, 374, 406,
                466, 413, 369, 334, 305, 285, 271, 261, 258, 257, 262, 274, 292, 319, 348, 377, 407,
                470, 418, 369, 333, 305, 287, 275, 263, 258, 258, 263, 275, 293, 318, 349, 380, 411,
                481, 421, 371, 334, 310, 292, 278, 268, 262, 263, 269, 280, 295, 321, 351, 385, 420,
                492, 424, 374, 337, 314, 296, 284, 274, 268, 270, 276, 286, 302, 326, 355, 391, 429,
                502, 437, 379, 343, 320, 306, 291, 282, 276, 279, 284, 294, 309, 332, 362, 398, 441,
                520, 444, 391, 352, 332, 313, 299, 290, 285, 287, 293, 302, 315, 338, 368, 408, 452,
                540, 461, 402, 363, 340, 323, 308, 300, 296, 299, 302, 311, 324, 346, 378, 420, 469,
                566, 480, 416, 377, 351, 331, 317, 309, 309, 308, 311, 320, 333, 355, 388, 434, 508
            },

            // Grgain:
            {
                499, 434, 391, 362, 341, 326, 314, 305, 302, 302, 307, 315, 329, 346, 369, 405, 447,
                471, 417, 379, 354, 334, 319, 307, 299, 296, 297, 301, 309, 322, 338, 361, 391, 432,
                451, 404, 372, 347, 327, 313, 302, 294, 292, 291, 295, 302, 316, 332, 351, 377, 414,
                441, 395, 366, 342, 324, 308, 297, 289, 285, 286, 291, 298, 310, 327, 345, 368, 401,
                430, 392, 361, 339, 320, 303, 290, 281, 277, 279, 285, 295, 307, 324, 342, 363, 393,
                429, 388, 361, 337, 314, 296, 281, 272, 267, 268, 277, 289, 304, 320, 340, 360, 388,
                423, 386, 360, 334, 307, 288, 277, 265, 261, 261, 269, 282, 300, 320, 338, 359, 384,
                424, 389, 360, 330, 303, 283, 269, 260, 258, 258, 263, 277, 296, 317, 338, 360, 382,
                428, 392, 359, 327, 300, 281, 267, 258, 257, 256, 260, 273, 291, 315, 338, 361, 385,
                432, 393, 355, 325, 299, 281, 269, 258, 256, 256, 261, 273, 289, 312, 339, 362, 387,
                437, 395, 354, 325, 299, 282, 272, 261, 257, 257, 263, 274, 290, 313, 339, 366, 390,
                444, 397, 355, 325, 303, 286, 275, 266, 261, 262, 269, 277, 292, 314, 341, 368, 396,
                453, 401, 359, 327, 305, 291, 280, 271, 265, 269, 273, 283, 297, 318, 344, 374, 402,
                462, 406, 365, 333, 314, 298, 286, 278, 273, 276, 282, 291, 302, 323, 347, 379, 413,
                473, 415, 372, 341, 322, 307, 293, 287, 283, 286, 289, 298, 309, 328, 353, 388, 422,
                493, 431, 382, 351, 330, 315, 302, 294, 292, 295, 299, 306, 316, 336, 362, 397, 435,
                511, 444, 393, 361, 338, 322, 309, 304, 304, 302, 305, 311, 324, 343, 369, 407, 466
            },

            // Gbgain:
            {
                498, 432, 390, 362, 341, 324, 313, 304, 301, 302, 306, 315, 329, 346, 370, 406, 450,
                470, 416, 381, 353, 333, 318, 307, 299, 296, 296, 301, 308, 321, 338, 359, 391, 432,
                452, 405, 373, 347, 327, 313, 302, 295, 291, 291, 295, 302, 314, 332, 351, 378, 414,
                441, 397, 365, 342, 323, 308, 297, 289, 285, 287, 290, 298, 311, 327, 346, 368, 401,
                432, 392, 360, 340, 319, 303, 289, 281, 277, 278, 284, 295, 307, 323, 342, 363, 394,
                426, 388, 361, 337, 313, 294, 281, 272, 267, 268, 276, 288, 304, 320, 339, 360, 387,
                424, 390, 361, 333, 307, 288, 277, 264, 261, 261, 268, 281, 300, 319, 339, 359, 384,
                424, 391, 360, 330, 303, 284, 269, 261, 258, 257, 264, 276, 294, 318, 338, 359, 385,
                429, 392, 359, 327, 301, 281, 268, 259, 257, 256, 261, 272, 290, 314, 338, 361, 385,
                434, 394, 357, 325, 299, 281, 269, 259, 256, 256, 261, 272, 289, 312, 339, 365, 386,
                438, 395, 355, 324, 300, 283, 272, 261, 257, 257, 264, 274, 290, 313, 339, 366, 392,
                445, 398, 356, 324, 303, 287, 275, 265, 260, 261, 269, 277, 292, 314, 340, 369, 398,
                453, 402, 359, 326, 307, 292, 279, 272, 266, 268, 273, 283, 297, 318, 343, 374, 405,
                463, 409, 366, 333, 312, 298, 286, 278, 273, 277, 282, 290, 302, 323, 350, 381, 413,
                476, 418, 373, 340, 321, 307, 293, 286, 283, 286, 289, 298, 308, 329, 355, 387, 423,
                492, 430, 383, 351, 330, 316, 302, 295, 292, 294, 298, 306, 315, 336, 361, 397, 436,
                515, 444, 392, 360, 339, 322, 311, 304, 303, 302, 306, 313, 324, 343, 369, 406, 468
            },

            // Bgain:
            {
                483, 424, 385, 358, 341, 324, 311, 304, 301, 301, 306, 315, 329, 344, 368, 402, 443,
                459, 412, 377, 352, 332, 317, 308, 298, 295, 296, 299, 308, 320, 337, 357, 387, 424,
                440, 399, 369, 345, 327, 313, 304, 295, 291, 291, 295, 303, 316, 330, 350, 377, 411,
                430, 392, 363, 341, 322, 308, 297, 288, 283, 286, 288, 298, 310, 326, 344, 369, 399,
                423, 388, 359, 338, 319, 302, 290, 281, 275, 279, 283, 294, 306, 324, 341, 364, 392,
                420, 387, 361, 337, 313, 295, 280, 271, 267, 268, 276, 288, 304, 320, 339, 357, 385,
                419, 387, 362, 335, 306, 286, 275, 264, 261, 260, 268, 281, 299, 320, 339, 360, 382,
                419, 388, 361, 329, 301, 282, 269, 260, 257, 257, 263, 275, 295, 316, 338, 358, 382,
                424, 394, 358, 327, 298, 280, 267, 258, 256, 256, 260, 272, 290, 314, 338, 362, 381,
                427, 394, 356, 326, 297, 280, 268, 259, 256, 256, 260, 272, 288, 311, 338, 363, 384,
                436, 397, 356, 324, 298, 282, 271, 261, 256, 258, 264, 273, 288, 311, 339, 366, 390,
                443, 399, 356, 324, 302, 286, 275, 266, 261, 262, 269, 278, 291, 314, 339, 369, 397,
                451, 403, 359, 327, 306, 292, 279, 270, 266, 268, 274, 283, 296, 317, 342, 373, 402,
                461, 412, 366, 332, 313, 297, 285, 278, 273, 277, 282, 290, 301, 322, 350, 380, 413,
                471, 419, 375, 340, 321, 307, 292, 286, 282, 286, 290, 299, 308, 328, 353, 386, 420,
                488, 429, 383, 351, 329, 315, 301, 294, 293, 295, 298, 306, 315, 333, 359, 395, 435,
                508, 444, 394, 363, 338, 322, 311, 304, 305, 304, 306, 314, 323, 342, 370, 406, 465
            },
        },
    },
};



#ifdef __cplusplus
#if __cplusplus
}
#endif
#endif /* End of #ifdef __cplusplus */


#endif /* __MN34220_CMOS_EX_H_ */
